// 权限管理

// 对路由做守卫--路由对全局前置守卫 router.beforeEach((to, from,next)=>{})
// 目标:没有登录,很多页面不能访问

// 引入router模块
import router from './router'

// 引入store获取token
import store from './store'

// 白名单-不需要登录就可以访问的页面
const whiteList = ['/login']

router.beforeEach((to, from, next) => {
  const { token } = store.state

  //  1. 如果登录了,不在白名单中的路径,直接放行
  if (token) {
    if (!whiteList.includes(to.path)) {
      next()
    } else {
      // 3. 如果登录了,在白名单中的路径,留在原地
      next(false)
    }
  } else {
    // 2. 如果没有登录,不在白名单中的路径,强制跳转到登录页面
    if (!whiteList.includes(to.path)) {
      next('/login?from=' + to.path)
    } else {
      next()
    }
  }
})
